<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    let str = 'asdfasdfaasdffa'

//     function demo(str){
//         let arr = str.split('') // 切割为数组  
//         // console.log(arr) // ["a", "s", "d", "f", "a", "s", "d", "f", "a", "a", "s", "d", "f", "f","a"]
//         let minArr = Array.from(new Set(arr)) // 数组去重
//         // console.log(minArr)  //["a", "s", "d", "f"]
//         let obj = {}
//         minArr.forEach(v=>{  // 遍历去重后的数组  并将每个不同的字符当作obj中的key
//          obj[v] = 0
//         })
//         // console.log(obj) // {a: 0, s: 0, d: 0, f: 0}
//         arr.forEach(v=>{
//             obj[v] = obj[v] + 1
//         })
//         // console.log(obj)  // {a: 5, s: 3, d: 3, f: 4}
//         // Math.max(...Object.values(obj))  //[5, 3, 3, 4]   // 5
//             let maxValue = 0
//             let maxKey = ''
//         for (const key in obj) {  // 遍历obj  如果出现次数多于之前时  赋值maxvalue maxkey
//             if( maxValue < obj[key]){
//                 maxValue = obj[key]
//                 maxKey = key
//             }
//         }
//         console.log(`出现最多的字符串是${maxKey}, 次数为${maxValue}`)
//         return `出现最多的字符串是${maxKey}, 次数为${maxValue}`
//     }
//   demo(str)

// let str = 'asdfasdfaasdffa'
//     function demo(str){
//         let arr  = str.split('')
//         let newarr = Array.from(new Set(arr))
//         let maxKey =''
//         let maxValue = 0
//         newarr.forEach(v=>{
//             let length = str.length - str.replaceAll(v,'').length
//             if(maxValue < length){
//                 maxValue =length
//                 maxKey = v
//             }
//         })
//         console.log(`出现最多的字符串是${maxKey}, 次数为${maxValue}`)
//     }
    demo(str)
        function demo(str) {
        let maxStr = null;
        let maxLength = 0;
        let obj = {}
        if (typeof str === 'string' && str.length > 0) {
            str.split('').forEach((ele, index) => {
                if (obj[ele] === undefined) {
                    obj[ele] = 1;
                } else {
                    obj[ele] += 1;
                }
                if (obj[ele] > maxLength) {
                    maxLength = obj[ele]
                    maxStr = ele
                }
            })
        }
        console.log(`出现最多的字符串是${maxStr}, 次数为${maxLength}`)
        }
</script>
</html>